The subject invention pertains to data processing systems and more specifically to the channels or communication interfaces which couple together the various system components.
More specifically, the subject invention pertains to a transmitting and receiving circuit which allows the bidirectional transfer of interlocked signals between two units or elements of a data processing system by means of a single connecting lead.
As is known in the art, data processing systems are composed of several units with specific functions, such as a central processor, a working memory, and peripheral devices, connected to each other by means of a set of leads over which a complex system of electric signals is transferred. A specific meaning is attributed to each signal, depending on the particular lead used for its transmission.
The complex of these leads and signals, together with the electrical, logical, and procedural characteristics to which such signals comply, are called a connection interface. Italian patent applications No. 22812 A/74, filed on May 16, 1974, and No. 27258 A/74, filed on Sept. 13, 1974, both filed by the assignee of the instant application and U.S. Pat. No. 3,303,476, issued on Feb. 7, 1967 under the title "Input/Output Control", provide some examples of connection interfaces between different units of a data processing system. These interfaces, taken by way of example, provide evidence that every prior art interface comprises a considerable number of leads, a number which has an order of magnitude of several tens, for the transfer of information.
A single interface may comprise a first group of leads (for example 8) to transfer data encoded in binary form from a unit A to a unit B, a second group of leads (for example 8) to transfer data encoded in binary form from the unit B to the unit A, a certain number of control leads, to transfer control signals from one unit to the other, a certain number of leads to transfer addresses from one unit to the other, a certain number of leads to transfer status information and, finally, a certain number of leads to transfer timing signals.
The presence of such a large number of interface leads causes substantial problems in terms of cost and space, due either to the dimensions or cost of the cables themselves, and to the dimensions, and cost of the lead terminations; i.e., of the connectors and electrical control circuits.
For a long period, therefore, attempts have been made to remedy these disadvantages by means of many different solutions. For example, a group of leads is used to transfer binary codes, whose meaning is defined by a signal transmitted on a characterization lead.
On this same group of leads can be transferred data, control signals and addresses, and the information nature is defined by a signal transmitted on a given lead which characterizes the information as data, or by a signal transmitted on another lead which characterizes the information as control, etc.
In addition, these signals which characterize the information may also be used as timing signals for such information, thereby achieving a certain reduction in the number of leads required.
Recently, the principle of using, whenever possible, the same lead for the bidirectional transfer of information has been introduced.
For example, a group of leads for the transfer of binary encoded data can be used to transfer information from a unit A to a unit B, and viceversa.
However, such transfer cannot be simultaneous, but must occur at different times in order to avoid interference. For this purpose unidirectional leads must be provided by means of which each unit signals to the other unit that it is using the bidirectional leads to transmit information, thus avoiding possible interference.
Examples of this type of interface, using bidirectional leads, can be found, in addition to the interconnection of separate units of a system, in data processing units formed of large scale integration circuits or microprocessors.
In this case the interconnection between multiple micro-processors makes widespread use of bidirectional communication paths. However, in this case there is no relationship between the information transmitted in one direction and the information transmitted in the other direction: the information transmitted in these two directions is always treated independently of each other.
On the other hand, whenever the information which must be exchanged is interdependent, and in many cases interlocked, thus far separate leads have always been used.
Examples of interlocked dialogue between two units are given by the above mentioned patent applications and U.S. patent. A typical example of interlocked dialogue is represented by the timing diagram of FIG. 4a in the U.S. Pat. No. 3,303,476.
Such diagram shows, for example, that in order to initiate a dialogue, the central processor output provides a signal representing a logical level 1 on the lead SELECT OUT. When such signal is received by the receiving, or peripheral, unit, the latter responds by transmitting a signal representing a logical level 1 on the lead SELECT IN. When this latter signal is received by the central processor, the signal then present on the lead SELECT OUT is restored to representing a logical level zero.
When the peripheral unit detects that SELECT OUT lead is at logical level zero, the signal on the lead SELECT IN also is restored to logical level zero.
Therefore, the two leads SELECT OUT and SELECT IN make possible an exchange of bidirectional and interlocked information.
Other examples of interlocked dialogue found in the above mentioned Figure are the exchange of signals on the two leads SERVICE OUT and SERVICE IN, on the two leads STATUS IN and SERVICE OUT, or on the two wires ADDRESS IN and COMMAND OUT.
This use of two leads selected from a set greater than two for an interlocked dialogue makes it possible either to attribute a specific meaning to the kind of information transferred or to recognize particular conditions under which the exchange of information is made, and, therefore, it is very powerful and efficient; however, it requires a large number of leads and very complex transmission and reception logic.
On the other hand, from a circuit standpoint it would be preferrable to simplify such logic implementing the interlocked exchange of information with pairs of leads independent of one another, but this would require a significant increase in the number of leads in an interface.
This inconvenience is obviated by the bidirectional transmission circuit for interlocked signals which is the object of the subject invention. Such circuit uses only one lead for the bidirectional transfer of signals, and extremely simple and low cost logical transmission and reception circuits.